A network device and/or input/output (I/O) adapter is used to control data flow between different devices (e.g., between a client and a server). These devices are generally configured to receive and transmit data between devices based on the operational characteristics of the network device. These network devices generally include ingress and egress queues for data transmission/receive requests, along with data buffers form buffering data that is to be transmitted or that has been received. In some instances, network congestion may affect data throughput on the network device. For example, data may be lost if data packets are received at a rate faster than the network device can transmit the data packets onto a bus of a corresponding data processing system. In other instances, consecutive bursts of large data packets may impact data throughput (incoming or outgoing). Network devices are generally configured having various flow control features to adapt to such congestion (e.g., pause frames may be issued to a source device to suspend data transmissions for some period of time).